import upload from '@/utils/upload'
import request from '@/utils/request'
import config from '@/config'
import { getAccessToken } from '@/utils/auth';  




/**
 * 通用上传图片方法
 * @param {Object} filePath - 文件路径
 * @param {String} type - 图片类型标识，如 idcardFront, idcardBack, certificate
 * @param {Function} callback - 上传成功后的回调函数，返回图片 URL
 */
export function uploadImage(filePath, type, callback) {
  uni.uploadFile({
	url: config.baseUrl + config.baseApi + '/infra/file/upload',
	header: {
	  Authorization: `Bearer ${this.token}`,
	  'X-File-Type': type
	},
	filePath: filePath,
	name: 'file',
	success: (res) => {
		const data = JSON.parse(res.data);
		console.log(data);
	  try {
		if (data.code === 0) {
		  uni.showToast({ title: '上传成功', icon: 'success' })
		  callback(data.data)
		} else {
		  uni.showToast({ title: data.msg || '上传失败', icon: 'none' })
		}
	  } catch (e) {
		console.error('解析上传结果失败', e)
		uni.showToast({ title: '上传异常', icon: 'none' })
	  }
	},
	fail: (err) => {
	  console.error('上传失败', err)
	  uni.showToast({ title: '上传失败', icon: 'none' })
	}
  })
}
